﻿using System.ComponentModel;
using MaxStoreErp.Core.Interfaces;

namespace MaxStoreErp.Core.BaseClasses
{
    /// <summary>
    /// Базовый класс презентера документов
    /// </summary>
    public abstract class DocumentPresenterBase: IDocument
    {
        /// <summary>
        /// Вызывается при попытке закрытия представления
        /// </summary>
        /// <param name="eventArgs"></param>
        public virtual void OnViewClosing(CancelEventArgs eventArgs)
        {

        }

        /// <summary>
        /// Вызывается при закрытии представления
        /// </summary>
        public virtual void OnViewClosed()
        {
            
        }

        /// <summary>
        /// Вызывается при загрузке представления
        /// </summary>
        public virtual void OnViewLoading()
        {
            
        }

        public abstract IView GetDocumentView(bool reloadData = true);
    }
}
